1. Field of the Invention
The present invention relates to a programmable controller which ensures ease of managing internal device contents, such as timer and counter set values, or ease of registering and managing the upper and lower limit values of the timer, counter and other set values. The invention also relates to a programmable controller which facilitates continuous display and character display. Further, the invention relates to a method for setting internal information, e.g., timer and counter set values, and to a method for setting the internal information of the upper and lower limit values of the timer, counter and other set values, and to a displaying method for a programmable controller.
2. Description of the Background Art
FIG. 30 is a perspective view which shows the arrangement of a conventional programmable controller (hereinafter referred to as the "PC"). In this drawing, the numeral 3101 indicates a CPU module, 3102 represents input/output modules which process predetermined signals between the CPU module 3101 and external devices (not shown), and 3103 denotes a power supply module which supplies power to the CPU module 3101, the input/output modules 3102 and other hardware. It is to be understood that the CPU module 3101, the input/output modules 3102 and the power supply module 3103 constitute a PC unit 3104.
3105 designates a simple peripheral device which is used by an operator and others at the field site to, for example, enter data for internal data setting and display monitoring information. 3105a indicates a cable for connection between the PC unit 3104 and the peripheral device 3105.
3106 represents a display section and 3107 denotes input means, for example, an input section. This input section 3107 has a keyboard and is provided for the simple peripheral device 3105 together with the display section 3106.
3108 designates a peripheral device which is used to, for example, write sequence programs, enter data for internal information setting, and display the monitoring information of the PC unit 3104.
Generally, the simple peripheral device 3105 is connected to the PC unit 3104. However, if, for example, a sequence program cannot be written using the simple peripheral device 3105, the peripheral device 3108 is connected to the PC unit 3104 instead. It is to be noted that the peripheral device 3108 is larger than the simple peripheral device 3105 and cannot be carried easily.
3109 indicates a display section and 3110 denotes an input section. The display section 3109 and the input section 3110 are disposed on the peripheral device 3108. 3108a designates a cable for connection between the PC unit 3104 and the peripheral device 3108.
FIG. 31 shows the block arrangement of the peripheral device 3105 in FIG. 30. In this drawing, 3201 indicates a CPU, 3202 represents RAM, and 3203 denotes ROM.
The CPU 3201 uses the RAM 3202 as a working area and is designed to execute a program stored in the ROM 3203.
The display section 3106 shows the monitoring information and the contents of the timers, counters, etc., to allow the operator at the field site to, for example, set the contents of internal devices via the input section 3107.
3206 indicates an interface for PC connection which matches the internal signals of the PC unit 3104 with signals transmitted over the cable 3105a.
FIG. 32 is a block arrangement diagram showing the arrangement of the CPU module 3101 in FIG. 30. In this drawing, 3301 represents a CPU, 3302 denotes RAM, 3303 designates ROM, 3304 indicates an input/output section provided for the conversion, etc., of signals internal to the CPU module 3101 into external input/output signals or vice versa, 3305 designates an interface for peripheral device connection which matches the internal signals of the CPU module 3101 with signals transmitted over the cable 3105a, 3306 denotes user program memory, and 3307 represents internal information storage means, for example, device memory.
The CPU 3301 uses the RAM 3302 as a working area and executes a sequence program stored in the user program memory 3306 under the control of a system program stored in the ROM 3303. It is to be understood that the PC is arranged to rewrite the contents of the device memory 3307 under the control of the sequence program and to operate in a predetermined manner with reference to the contents of the device memory 3307.
The internal information in the PC, such as timer and counter set values, are stored into the device memory 3307 provided in the CPU module 3101 as the contents of the internal devices. It is to be noted that said timer set values are the set values of the time-out time of the timers. Also, the counter set values are the set values of the count-up values of the counters.
FIG. 33 is a flowchart which illustrates an operation where internal device contents such as timer and counter set values are changed by the simple peripheral device 3105 shown in FIG. 30. In step S3401 of FIG. 33, the operator enters from the input section 3107 the device name and device number of an internal device whose contents will be changed, and the processing proceeds to step S3402. It is to be understood that the address of the device memory 3307, i.e., the address where the internal device contents are stored, are specified by the device name and device number.
In step S3402, the timer or counter set value, or the contents of the internal device whose address has been specified, is read from the device memory 3307 of the CPU module 3101 and shown on the display section 3106, and the execution advances to step S3403.
In step S3403, the operator enters a new value from the input section 3107 and terminates the change operation.
Generally, in the PC, the permissible setting limit values of the timer and counter set values, i.e., upper and lower limit values of the set values, are set in the sequence program to prevent any set value from being defined outside this range. To change these upper and lower limit values, it was required by prior art programmable controllers to connect the peripheral device 3108 to the CPU module 3101 instead of connecting the simple peripheral device 3105 and use this peripheral device 3108 to modify the sequence program. This work is difficult for a worker in the field who is not skilled in the creation of sequence programs.
Also, when the simple peripheral device 3105 is used, faulty values might be defined, since it is arranged to define the timer and counter set values, etc., independently of the upper and lower limit values registered.
An example where such faulty values are defined will be described with respect to a system which marks the centers of products (not shown) moving on a belt conveyor (not shown).
First, this system will be described in general. The belt conveyor, which is driven by a pulse motor, has a pulse generator (not shown) which outputs one pulse for each 1 mm which the belt conveyor moves. This system has a sensor which detects products and a counter (not shown) which counts the output pulses of the pulse generator. The system is designed such that the counter is reset on the leading edge of the detection output of the sensor and products are marked when the counter has counted up to a preset value.
In this example, there are various products which require marking at different intervals. For instance, some products are marked at the center when the counter is set to 100 while other products are marked at the center when the counter is set to 200. The counter is set according to the product to be marked.
If a worker at the plant field site makes a mistake using the simple peripheral device 3105 in this system, for example, if the counter is set to 1000 for products for which the counter should be set to 100, then a problem arises. In such a case, the products are not marked. If this is not noted visually, the products will be shipped without being marked.
In the conventional art, there is known a programmable controller disclosed in Japanese Laid-Open Patent Publication No. SHO62-100801. This programmable controller judges whether or not the current value of a timer or a counter is more than the upper limit value registered beforehand. If the current value is judged above the upper limit value, the programmable controller forces the current value to be not more than the upper limit value. It is to be noted that in the case of this programmable controller, the sequence program must be modified using a large-sized peripheral device similar to the peripheral device 3108 to change the upper and lower limit values of the timers and counters.
Conventionally, as described above, the set values of the internal devices such as the timers and counters can be defined and their upper and lower limit values registered or changed via the peripheral device 3108, but the peripheral device 3108 is large in size and cumbersome. Additionally, it is difficult for workers at the field site unskilled in sequence program writing to perform the above operation because it is performed in the sequence program.
Also, the conventional simple peripheral device 3105 has the disadvantage of not allowing the upper and lower limit values of the timers, counters and others to be registered and changed. Another drawback which the conventional simple peripheral device 3105 has is that it allows a faulty value which is entered accidentally as the set value of the timer, counter or the like, to be stored unchanged as the set value.
Also, since the contents of the internal devices are information given in any of binary, octal, decimal or hexadecimal formats, and the conventional peripheral device 3105 cannot display characters, a problem arises because numerically represented character information stored in the internal devices cannot be displayed as characters.
Another disadvantage of the prior art is the difficulty of displaying the contents of the internal devices consecutively or in real time.
Accordingly, it is an object of the present invention to overcome the above problems by providing a programmable controller which ensures ease of defining or managing the set values of internal devices of the PC, such as timers and counters, and facilitates the definition and management of the upper and lower limit values. Another object of the present invention is to provide a method for setting the internal information of a programmable controller which ensures ease of defining or managing the set values of the timers, counters, etc. A further object of the present invention is to provide a method for setting the internal information of a programmable controller which facilitates the definition or management of the upper and lower limit values.
It is another object of the present invention to provide a programmable controller which allows numerically represented character information stored in internal devices to be displayed in the form of characters by a simple peripheral device.
It is a further object of the present invention to provide a programmable controller and a displaying method for the programmable controller which facilitate the consecutive display, real-time display, etc., of the contents of internal devices.